/*
 * Copyright 2014, Red Hat, Inc. and individual contributors as indicated by the
 * @author tags. See the copyright.txt file in the distribution for a full
 * listing of individual contributors.
 *
 * This is free software; you can redistribute it and/or modify it under the
 * terms of the GNU Lesser General Public License as published by the Free
 * Software Foundation; either version 2.1 of the License, or (at your option)
 * any later version.
 *
 * This software is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
 * details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this software; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
 * site: http://www.fsf.org.
 */
package org.zanata.webtrans.client.ui;

import com.google.gwt.dom.client.Element;
import com.google.gwt.user.client.ui.TextBox;
import org.zanata.util.CoverageIgnore;

/**
 * @author damason@redhat.com
 */
public class SearchTextBox extends TextBox {

    public SearchTextBox() {
    }

    public String getPlaceholder() {
        return getElement().getAttribute("placeholder");
    }

    public void setPlaceholder(String text) {
        getElement().setAttribute("placeholder", (text == null ? "" : text));
    }

    public String getAutocomplete() {
        return getElement().getAttribute("autocomplete");
    }

    public void setAutocomplete(String text) {
        getElement().setAttribute("autocomplete", (text == null ? "" : text));
    }

    public boolean isFocused() {
        return isElementFocused(getElement());
    }

    @CoverageIgnore("JSNI")
    private native boolean isElementFocused(Element element)
        /*-{
        return element.ownerDocument.activeElement === element;
    }-*/;
}
